---
title: Performance is key. Consistency is a must.
---
<!-- Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License. -->

<section class="bf-masthead" id="content" role="main">
    <div class="bf-masthead-bg">
        <div class="container">
            <img class="logo-title img-responsive hidden-xs" src="img/apache_geode_logo.png" />
            <div class="text-container">
                <h2 class="tagline"><em>Performance</em> is key. <em>Consistency</em> is a must.</h2>
                <p class="description">Providing low latency, high concurrency data management solutions since 2002.<br/>
                  <br/>Build high-speed, data-intensive applications that elastically meet performance requirements at any scale.<br/>
                  Take advantage of Apache Geode's unique technology that blends advanced techniques for data replication, partitioning and distributed processing.

                  <br/><br/>
                  Apache Geode (incubating) provides a database-like consistency model, reliable transaction processing and a shared-nothing architecture to maintain very low latency performance with high concurrency processing.<br/>
            </div>

            <div class="btn-wrapper">
              <p><a href="/releases/" class="btn btn-inverse btn-lg">Download Geode</a> &nbsp;</p> 
              <!-- Place this tag where you want the button to render. -->
              <a class="github-button" href="https://github.com/apache/incubator-geode" data-icon="octicon-star" data-style="mega" data-count-href="/apache/incubator-geode/stargazers" data-count-api="/repos/apache/incubator-geode#stargazers_count" data-count-aria-label="# stargazers on GitHub" aria-label="Star apache/incubator-geode on GitHub">Star</a>
              <a class="github-button" href="https://github.com/apache/incubator-geode/fork" data-icon="octicon-repo-forked" data-style="mega" data-count-href="/apache/incubator-geode/network" data-count-api="/repos/apache/incubator-geode#forks_count" data-count-aria-label="# forks on GitHub" aria-label="Fork apache/incubator-geode on GitHub">Fork</a>
              <a class="github-button" href="https://github.com/apache/incubator-geode" data-icon="octicon-eye" data-style="mega" data-count-href="/apache/incubator-geode/watchers" data-count-api="/repos/apache/incubator-geode#subscribers_count" data-count-aria-label="# watchers on GitHub" aria-label="Watch apache/incubator-geode on GitHub">Watch</a>


            </div>
        </div>
    </div>
</section>

<section class="bf-features">
    <div class="container">
        <div class="row">
            <div class="col-md-4">
                <div class="bf-icon-wrap"><i style="font-size:65px; vertical-align: -5px;" aria-hidden="true" class="fa fa-sitemap"></i></div>
                <h3>Replication and Partitioning</h3>
                <p>Data can easily be partitioned (sharded) or replicated between nodes allowing performance to scale as needed. Durability is ensured through redundant in-memory copies and disk-based persistence.</p>
            </div>
            <div class="col-md-4">
                <div class="bf-icon-wrap"><i style="font-size:65px; vertical-align: -5px;" aria-hidden="true" class="fa fa-hdd-o"></i></div>
                <h3>Persistence</h3>
                <p>Super fast write-ahead-logging (WAL) persistence with a shared-nothing architecture that is optimized for fast parallel recovery of nodes or an entire cluster.</p>
            </div>
            <div class="col-md-4">
                <div class="bf-icon-wrap"><i aria-hidden="true" class="fa fa-rocket"></i></div>
                <h3>Performance</h3>
                <p>Linear-scaling low latency for transactions, reads, writes and query processing of indexed or unindexed data.</p>
            </div>
        </div>
        <div class="row">
            <div class="col-md-4">
                <div class="bf-icon-wrap" style="font-size:40px; vertical-align: 15px;"><i aria-hidden="true" class="fa fa-fast-forward"></i><i aria-hidden="true" class="fa fa-dashboard"></i></div>
                <h3>In-Memory Storage</h3>
                <p>Blazing fast in-memory storage optimized for large heaps, with the option of using off-heap storage, compression and features such as disk-overflow, eviction and expiration of data.</p>
            </div>
            <div class="col-md-4">
                <div class="bf-icon-wrap"><span style="font-size:60px" aria-hidden="true" class="fa fa-cogs"></span></div>
                <h3>Functions</h3>
                <p>Distributed location-aware user functions can be deployed and executed by the same nodes storing relevant sharded data for fast parallel processing. Failed operations can be retried on replicant nodes.</p>
            </div>
            <div class="col-md-4">
                <div class="bf-icon-wrap"><i style="font-size:65px; vertical-align: -5px;" aria-hidden="true" class="fa fa-credit-card"></i></div>
                <h3>Transactions</h3>
                <p>ACID distributed transactions support efficient and safe coordinated operations on colocated data. Transactions can be initiated or suspended by either a client or a server.</p>
            </div>
        </div>
        <div class="row">
          <div class="col-md-4">
              <div class="bf-icon-wrap"><i style="font-size:65px; vertical-align: -5px;" aria-hidden="true" class="fa fa-table"></i></div>
              <h3>OQL and Indexes</h3>
              <p>Object Query Language allows distributed query execution on hot and cold data, with SQL-like capabilities, including joins.<br/>
              Multiple kinds of indexes can be defined and consistently maintained across the cluster.</p>
          </div>
          <div class="col-md-4">
              <div class="bf-icon-wrap"><i style="font-size:65px; vertical-align: -5px;" aria-hidden="true" class="fa fa-bolt"></i></div>
              <h3>Events</h3>
              <p>Clients can be notified about server-side data events, and servers can react synchronously or asynchronously with guaranteed delivery of ordered events.</p>
          </div>
          <div class="col-md-4">
              <div class="bf-icon-wrap"><i style="font-size:65px; vertical-align: -5px;" aria-hidden="true" class="fa fa-cloud"></i></div>
              <h3>Clustering</h3>
              <p>Highly scalable, robust advanced clustering technology with failure detection, dynamic scaling, and network-partition detection algorithms.</p>
          </div>
        </div>
        <div class="row">
          <div class="col-md-4">
              <div class="bf-icon-wrap" style="font-size:30px; vertical-align: 15px;" aria-hidden="true"><i class="fa fa-cloud"></i><i style="font-size:15px; vertical-align: 15px;" class="fa fa-exchange fa-8x"></i><i class="fa fa-cloud"></i></div>
              <h3>Multi-Cluster</h3>
              <p>Geode clusters can be replicated over WAN in various topologies: active-active, active-passive, ring, hub-spoke, star, etc.</p>
          </div>
          <div class="col-md-4">
              <div class="bf-icon-wrap" style="font-size:30px; vertical-align: -5px;" aria-hidden="true"><i class="fa fa-bullhorn"></i><i class="fa fa-laptop"></i></div>
              <h3>Continuous Query</h3>
              <p>Clients can stay up to date by registering OQL queries with the Geode servers, making event-driven applications possible.</p>
          </div>
          <div class="col-md-4">
              <div class="bf-icon-wrap" style="font-size:30px; vertical-align: -5px;" aria-hidden="true"><i class="fa fa-desktop"></i><i class="fa fa-laptop"></i></div>
              <h3>Clients</h3>
              <p>Clients are available for Java. (C++, C# .NET and Node.js coming soon.) A REST API is available for all other languages.</p>
          </div>
        </div>
      <div class="row">
          <div class="col-md-4">
              <div></div>
          </div>
          <div class="col-md-4">
              <div class="bf-icon-wrap" style="font-size:65px; vertical-align: -5px;" aria-hidden="true"><i class="fa fa-plug"></i></div>
              <h3>Adapters</h3>
              <p>Geode can be used as a drop-in replacement for Redis and memcached, allowing users of these caches to use Geode's server-side features like multi-cluster replication.</p>
          </div>
          <div class="col-md-4">
              <div></div>
          </div>
        </div>

    </div>

    </div>
</section>

<section class="bf-questions">
    <div class="container">
            <div class="col-md-12 text-center cta">
                And much more... Interested? You can check our <a href="https://cwiki.apache.org/confluence/display/GEODE/Index#Index-Geodein5minutesGeodein5minutes" target="_blank" class="btn btn-inverse btn-lg">Geode in 5 minutes tutorial</a> <span class="avoidwrap">, ask a question on the <a href="/community/" class="btn btn-inverse btn-lg">Mailing lists</a> or <a href="http://stackoverflow.com/search?q=Apache%20Geode" class="btn btn-inverse btn-lg">StackOverflow</a></span>
            </div>
    </div>
</section

<section class="bf-news">
    <div class="container">

        <div class="row">
            <div class="col-md-12 text-left">
                <h2>About the Project</h2>
                <p>Apache Geode (incubating) is a data management platform that provides real-time, consistent access to data-intensive applications throughout widely distributed cloud architectures.</p>

                <p>By pooling memory, CPU, network resources, and (optionally) local disk across multiple processes to manage application objects and behavior, it uses dynamic replication and data partitioning techniques to implement high availability, improved performance, scalability, and fault tolerance. In addition to being a distributed data container, Apache Geode is an in-memory data management system that provides reliable asynchronous event notifications and guaranteed message delivery.</p>

                <p>Apache Geode is a mature, robust technology originally developed by GemStone Systems in Beaverton, Oregon.
Commercially available as GemFire™, the technology was first widely deployed in the financial sector as the transactional, low-latency data engine used
in Wall Street trading platforms.
Today Apache Geode is used by over 600 enterprise customers for high-scale business applications that must meet low latency and 24x7 availability requirements.</p>

                <p>This project is undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</p>
            </div>
            <!--
            <div class="col-md-4 text-left">
                <h2>Recent Releases</h2>


            </div>
            -->
        </div>

    </div>
</section>
